<!--
 * @Description: 链表的基础理论
 * @version: 
 * @Author: 尹鹏孝
 * @Date: 2022-01-05 10:47:32
 * @LastEditors: 尹鹏孝
 * @LastEditTime: 2022-01-07 09:11:55
-->
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>链表的基础理论</title>
</head>

<body>
    <!-- 指针域和数据域
什么是链表，链表是一种通过指针串联在一起的线性结构，每一个节点由两部分组成，一个是数据域一个是指针域（存放指向下一个节点的指针），最后一个节点的指针域指向null（空指针的意思）。
单链表============
data<-[A]->head
    |_>next[B][......]->null


双向链表==========
null<-[A]->[B]  ->[............]->null
 prev<_|||_>next  prev_|||_next
      |_>data           |_>data


 循环链表
             =
            ===
           ====
         ========
        ==========
        =========
        ======
        ===
        =
 就是首尾相连的链表


 链表的存储方式：
 数组是连续存储，链表不是连续存储，他是通过指针域的指针链接在内存的各个部分的地址上面，链表的分配取决于内存机制

 链表的定义================
 

-->

    <script>
        class Node {
            constructor(el) {
                this.el = el;
                this.next = null;
            }
        }

        class LinkedList {
            constructor() {
                this.head = new Node('head');
            }
            find() {

            }
            insert() {

            }
            remove(head, val) {
                const res = new LinkedList(0, head);
                let cur = res;
                while (cur.next) {
                    if (cur.next.val === val) {
                        cur.next = cur.next.next;
                        continue;
                    }
                    cur = cur.next;
                }
                return res.next;
            }
        }
    </script>
</body>

</html>